package com.iot08.common.entity.app;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.UUID;

/**
 * @author cwj
 * @description
 * @date 2025/1/13 16:29
 **/
@Data
@Document("apple_pay_notify_info")
public class ApplePayNotifyInfo implements Serializable {

    @Id
    private String id;
    //通知类型
    private String notificationType;
    //子类型
    private String subtype;
    //AppleId
    private Long appAppleId;
    //bundleid
    private String bundleId;
    //产品id
    private String productId;
    //通知uuid
    private String notificationUuid;
    //通知支付订单信息
    private ApplePayTransactionInfo applePayTransactionInfo;
    //续订签名信息
    private ApplePayRenewalInfo applePayRenewalInfo;
    //通知状态
    private Integer status;
    //消费请求原因
    private String consumptionRequestReason;
    //版本
    private String version;
    //签名日期
    private Long signedDate;
    //支付环境
    private String environment;
    //请求身份
    private String requestIdentifier;
    //国家编码
    private List<String> storefrontCountryCodes;
    //成功次数
    private Long succeededCount;
    //失败次数
    private Long failedCount;
    //外部购买商品id
    private String externalPurchaseId;
    //token创建日期
    private Long tokenCreationDate;
    //记录创建时间
    private Date createTime;
    //记录更新时间
    private Date updateTime;
}
